package de.guice.aktenschrank.logiclayer;

import com.google.inject.Inject;

import de.guice.aktenschrank.crud.AkteDAO;
import de.guice.aktenschrank.entities.AkteData;

/**
 * Die Service-Klasse beinhaltet die Anwendungslogik und ruft die DAO-Methoden auf. 
 * Wichtig ist hier: der Injector der diese Klasse ruft, bestimmt welches "Modul" verwendet wird!
 * An dieser stelle ist keine Verbindung zu der DAO-Implementierung bekannt, lediglich das Interface!
 * 
 * @author Philippe Mitsch
 *
 */
public class AkteService {

	
	@Inject
	AkteDAO akteDAO; //Linked Binding
	
	@Inject
	AkteData akte; //Provider Binding

	public void create(String aktenName,String aktenInhalt) {		
		
		akte.setAktenName(aktenName);
		akte.setInhalt(aktenInhalt);
		
		try {
			akteDAO.create(this.akte);
		} catch (Throwable e) {
			e.printStackTrace();
		}
	}
}
